"ui";
ui.layout(
  <vertical>
    <text gravity="center" textStyle="bold" textSize="30sp">
      牙叔出品
    </text>
    <input id="代码内容" w="*"></input>
    <button id="执行代码">执行代码</button>
    <input id="脚本文件路径" w="*"></input>
    <button id="执行脚本文件">执行脚本文件</button>
    <input id="项目入口文件路径" w="*"></input>
    <button id="执行项目">执行项目</button>
    <button id="日志">日志</button>
    <button id="停止脚本" text="停止脚本"></button>
  </vertical>
);

ui.代码内容.setText('toastLog("hello");');
ui.脚本文件路径.setText("/sdcard/脚本/main.js");
ui.项目入口文件路径.setText("/sdcard/脚本/测试/main.js");

ui.执行代码.click(function () {
  eval(ui.代码内容.text());
});
ui.执行脚本文件.click(function () {
  engines.execScriptFile(ui.脚本文件路径.text().trim());
});
ui.执行项目.click(function () {
  let entryFilePath = ui.项目入口文件路径.text().trim();
  engines.execScriptFile(entryFilePath, { path: entryFilePath.replace(/\/[\w.]+?$/, "") });
});
ui.日志.click(function () {
  app.startActivity("console");
});
ui.停止脚本.click(function () {
  engines.all().map((ScriptEngine) => {
    if (engines.myEngine().toString() !== ScriptEngine.toString()) {
      ScriptEngine.forceStop();
    }
  });
});
